package com.grupobbva.seguridad.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;


// TODO: Auto-generated Javadoc
/**
 * The persistent class for the PERFIL_APLICACION database table.
 * 
 */
/**
 * @author wbardale 18-11-2013
 *
 */
@Entity
@Table(name="EMPRESA_ACCESO")
@SequenceGenerator(name="SQ_EMPRESA_ACCESO_ID", sequenceName="SQ_EMPRESA_ACCESO_ID", allocationSize=1)
public class EmpresaAcceso implements Serializable {
	
	/** The Constant serialVersionUID. */
	private static final long serialVersionUID = 1L;

	/** The codigo empresa acceso. */
	@Id
	@Column(name="COD_EMPRESA_ACCESO")
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SQ_EMPRESA_ACCESO_ID")
	private Long codigoEmpresaAcceso;
	
	/** The codigo empresa. */
	@Column(name="CODIGO_EMPRESA")
	private String codigoEmpresa;
	
	/** The nombre empresa. */
	@Column(name="NOMBRE_EMPRESA")
	private String nombreEmpresa;
	
	//bi-directional many-to-one association to Aplicacion
    /** The aplicacion. */
	@ManyToOne
	@JoinColumn(name="APLICACION_ID")
	private Aplicacion aplicacion;

	
	
	/** The estado. */
	@ManyToOne
	@JoinColumn(name="ESTADO_ID")
	private TablaDetalle estado;

	/** The ind bloqueo. */
	@Column(name="IND_BLOQUEO")
	private String indBloqueo;
	
	/** The usuario creacion. */
	@Column(name="USUARIO_CREACION")
	private String usuarioCreacion;

	/** The fecha creacion. */
	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="FECHA_CREACION")
	private Date fechaCreacion;

	
	
	/** The estado descripcion. */
	@Transient
	private String estadoDescripcion;

	/**
	 * Gets the codigo empresa.
	 *
	 * @return the codigo empresa
	 */
	public String getCodigoEmpresa() {
		return codigoEmpresa;
	}





	/**
	 * Sets the codigo empresa.
	 *
	 * @param codigoEmpresa the new codigo empresa
	 */
	public void setCodigoEmpresa(String codigoEmpresa) {
		this.codigoEmpresa = codigoEmpresa;
	}





	/**
	 * Gets the nombre empresa.
	 *
	 * @return the nombre empresa
	 */
	public String getNombreEmpresa() {
		return nombreEmpresa;
	}


	/**
	 * Sets the nombre empresa.
	 *
	 * @param nombreEmpresa the new nombre empresa
	 */
	public void setNombreEmpresa(String nombreEmpresa) {
		this.nombreEmpresa = nombreEmpresa;
	}

	/**
	 * Gets the estado.
	 *
	 * @return the estado
	 */
	public TablaDetalle getEstado() {
		return estado;
	}

	/**
	 * Sets the estado.
	 *
	 * @param estado the new estado
	 */
	public void setEstado(TablaDetalle estado) {
		this.estado = estado;
	}





	/**
	 * Gets the ind bloqueo.
	 *
	 * @return the ind bloqueo
	 */
	public String getIndBloqueo() {
		return indBloqueo;
	}

	/**
	 * Sets the ind bloqueo.
	 *
	 * @param indBloqueo the new ind bloqueo
	 */
	public void setIndBloqueo(String indBloqueo) {
		this.indBloqueo = indBloqueo;
	}

	/**
	 * Gets the aplicacion.
	 *
	 * @return the aplicacion
	 */
	public Aplicacion getAplicacion() {
		return aplicacion;
	}

	/**
	 * Sets the aplicacion.
	 *
	 * @param aplicacion the new aplicacion
	 */
	public void setAplicacion(Aplicacion aplicacion) {
		this.aplicacion = aplicacion;
	}

	/**
	 * Gets the codigo empresa acceso.
	 *
	 * @return the codigo empresa acceso
	 */
	public Long getCodigoEmpresaAcceso() {
		return codigoEmpresaAcceso;
	}

	/**
	 * Sets the codigo empresa acceso.
	 *
	 * @param codigoEmpresaAcceso the new codigo empresa acceso
	 */
	public void setCodigoEmpresaAcceso(Long codigoEmpresaAcceso) {
		this.codigoEmpresaAcceso = codigoEmpresaAcceso;
	}

	/**
	 * Gets the estado descripcion.
	 *
	 * @return the estado descripcion
	 */
	public String getEstadoDescripcion() {
		return estadoDescripcion;
	}

	/**
	 * Sets the estado descripcion.
	 *
	 * @param estadoDescripcion the new estado descripcion
	 */
	public void setEstadoDescripcion(String estadoDescripcion) {
		this.estadoDescripcion = estadoDescripcion;
	}

	/**
	 * Gets the usuario creacion.
	 *
	 * @return the usuario creacion
	 */
	public String getUsuarioCreacion() {
		return usuarioCreacion;
	}

	/**
	 * Sets the usuario creacion.
	 *
	 * @param usuarioCreacion the new usuario creacion
	 */
	public void setUsuarioCreacion(String usuarioCreacion) {
		this.usuarioCreacion = usuarioCreacion;
	}

	/**
	 * Gets the fecha creacion.
	 *
	 * @return the fecha creacion
	 */
	public Date getFechaCreacion() {
		return fechaCreacion;
	}

	/**
	 * Sets the fecha creacion.
	 *
	 * @param fechaCreacion the new fecha creacion
	 */
	public void setFechaCreacion(Date fechaCreacion) {
		this.fechaCreacion = fechaCreacion;
	}
    
}